(レポート) Elastic{ON} 2016: What’s Brewing in Beats #elasticon
はじめに
本記事はElastic{ON} 2016のセッション、「What's Brewing in Beats」のレポートです。
スピーカーはElasticのMonica SarbuとTudor Golubenco。
レポート
・Beats = Lightweight shipper ・様々なオペレーションデータを可視化。 ・Packetbeatでwire dataを、Topbeatでシステムデータを、Filebeatとwinlogbeatでログデータを。
・ネットワークトラフィックのsniff。ユースケースとしてセキュリティ、ネットワークやアプリケーションのトラブルシューティング、パフォーマンス計測。 ・wiresharkやsnort、tcpdumpといったツールがある。
・Packetbeatはリアルタイムなアプリケーションモニタリング。ネットワークトラフィックをキャプチャし、タグ付けしてJSONでElasticsearchに投入。 ・プロトコル別にdecode。 ・Elastic{ON}のトラフィックもデモで展示中。
・Topbeat、Unixコマンドのtopライクにデータを取得。 ・システム単位、プロセスごと、ディスクUsageデータを取得。
・Filebeat。ログ行をElasticsearchに投入。 ・ファイルに対してリードポインタを持ち、行をキューのように管理。Logstashに送る。
・Filebeatはパースしていないログ行を取得、Logstashのフィルタでパースする。 ・5.0では直接Elasticsearch(Ingest Node)に投入できる。
・Winlogbeat。WindowsイベントログをElasticsearchに投入。
・デモ。Packetbeat、Topbeat、Winlogbeatを動かし可視化。MySQLのSlow query logなども見れる。
・現時点で14のCommunity beatsがある。
・Community Beatsを作る基盤となるライブラリ、libbeat。Golangのlibrary。ElasticsearchとLogstashにアウトプットできる。暗号化及び認証に対応。
・Pingbeat。ICMP pingsをリストにあるホストに対して送信。UDP pingの送信も可能。DNSで名前解決もできる。 ・Unifiedbeat。IDSのログ(Unified2 binary)をパース。Kibana dashboardもある。 ・Dockerbeat。Docker APIを使ってコンテナをモニタリング。 ・Magioscheckbeat。Nagios pluginとして導入。アラートをElasticsearchに投入。
・Beatを作るのは?Beat generatorがある。pip install cookiecutterから導入。
・Beats Packer。クロスコンパイルに対応。RPMとDEBのパッケージとして提供。
・Metricbeat。様々なシステムに対応したモジュール。Metricbeat自体もライブラリ。これを使ったdf2beatというものもある。
・Queueを追加した構成。RedisかKafkaを使う。 Beats 5.05.0ではKafkaをプラグインでサポート。
さいごに
Beatsは様々な可能性を秘めています。幾つかは知っていましたが、14もプロダクトができているとは知りませんでした。ぜひ試してみたいです。